The present embodiments relate to wireless communications systems and, more particularly, to transmitters and receivers with multiple transmit and multiple receive antennas, respectively.
Wireless communications are prevalent in business, personal, and other applications, and as a result the technology for such communications continues to advance in various areas. One such advancement includes the use of spread spectrum communications, including that of code division multiple access (“CDMA”) and wideband code division multiple access (“WCDMA”) cellular communications. In such communications, a user station (e.g., a hand held cellular phone) communicates with a base station, where typically the base station corresponds to a “cell.” CDMA communications are by way of transmitting symbols from a transmitter to a receiver, and the symbols are modulated using a spreading code which consists of a series of binary pulses. The code runs at a higher rate than the symbol rate and determines the actual transmission bandwidth. In the current industry, each piece of CDMA signal transmitted according to this code is said to be a “chip,” where each chip corresponds to an element in the CDMA code. Thus, the chip frequency defines the rate of the CDMA code. WCDMA includes alternative methods of data transfer, one being frequency division duplex (“FDD”) and another being time division duplex (“TDD”), where the uplink and downlink channels are asymmetric for FDD and symmetric for TDD. Another wireless standard involves time division multiple access (“TDMA”) apparatus, which also are used by way of example in cellular systems. TDMA communications are transmitted as a group of packets in a time period, where the time period is divided into slots (i.e., packets) so that multiple receivers may each access meaningful information during a part of that time period. In other words, in a group of receivers, each receiver is designated a slot in the time period, and that slot repeats for each group of successive packets transmitted to the receiver. Accordingly, each receiver is able to identify the information intended for it by synchronizing to the group of packets and then deciphering the time slot corresponding to the given receiver. Given the preceding, CDMA transmissions are receiver-distinguished in response to codes, while TDMA transmissions are receiver-distinguished in response to time slots.
Since CDMA and TDMA communications are along wireless media, then the travel of those communications can be affected in many ways, and generally these effects are referred to as the channel effect on the communication. For example, consider a transmitter with a single antenna transmitting to a receiver with a single antenna. The transmitted signal is likely reflected by objects such as the ground, mountains, buildings, and other things that it contacts. In addition, there may be other signals that interfere with the transmitted signal. As a result, when the transmitted communication arrives at the receiver, it has been affected by the channel effect. As a result, the originally-transmitted data is more difficult to decipher due to the added channel effect.
As a result of the channel effect, various approaches have been developed in an effort to reduce or remove that effect from the received signal so that the originally-transmitted data is properly recognized. In other words, these approaches endeavor to improve signal-to-noise ratio (“SNR”), thereby improving other data accuracy measures (e.g., bit error rate (“BER”), frame error rate (“FER”), and symbol error rate (“SER”)). One such approach is referred to in the art as a closed loop system, meaning the receiver feeds back information, relating to the channel effect, to the transmitter so that the transmitter can modify its future transmissions so as to compensate for the channel effect. This process repeats so that future changes in the channel effect are again fed back from the receiver to the transmitter, and the transmitter thereafter responds to the updated information relating to the channel effect. Another approach is referred to in the art as an open loop system. In the open loop system, the transmitter also attempts to adjust its transmissions to overcome the channel effect, but the system is termed “open” because there is no feedback from the receiver to the transmitter.
By way of further background, the wireless art also includes other approaches to assist in symbol recovery in view of the channel effect as well as other signal-affecting factors. One such approach is termed antenna diversity, which refers to using multiple antennas at either the transmitter, receiver, or both. For example, in the prior art, a multiple-antenna transmitter is used to transmit the same data on each antenna, with a single antenna receiver then exploiting the differences in the received signals from the different antennas so as to improve SNR. The approach of using more than one transmit antenna at the transmitter is termed transmit antenna diversity, where similarly using more than one receive antenna at the receiver is termed receive antenna diversity. More recently, antenna diversity has been combined with the need for higher data rate. As a result, multiple antenna transmitters have been devised to transmit different data, that is, the data to be transmitted is separated into different streams, with one transmit antenna transmitting a first stream and another transmit antenna transmitting a second stream that is independent from the first stream, and so forth for each of the multiple transmit antennas. In such a case, the receiver typically includes the same, or a greater, number of antennas as the transmitter. Of course, each receiver antenna receives signals from all of the transmit antennas, and these signals also are affected by respective channel effects. Thus, the receiver operates to exploit the use of its multiple antennas as well as recognizing the use of multiple transmit antennas in an effort to fully recover the independent data streams transmitted by the transmitter.
One type of multiple transmit antenna and multiple receive antenna system is known in the art as a multi-input multi-output (“MIMO”) system and is shown generally as system 10 in the electrical and functional block diagram of FIG. 1. In the example shown in FIG. 1, system 10 is a CDMA system. System 10 includes a transmitter 12 and a receiver 14. For the sake of convenience, each of transmitter 12 and receiver 14 is discussed separately, below.
Transmitter 12 receives information bits Bi at an input to a channel encoder 16. Channel encoder 16 encodes the information bits Bi in an effort to improve raw bit error rate, where various encoding techniques may be used. The encoded output of channel encoder 16 is coupled to the input of an interleaver 18. Interleaver 18 operates with respect to a block of encoded bits and shuffles the ordering of those bits so that the combination of this operation with the encoding by channel encoder 16 exploits the time diversity of the information, and then those bits are output to a modulator 20. Modulator is in effect a symbol mapper in that it converts its input bits to symbols, each designated generally as si. The converted symbols si may take various known forms, and the symbols si may represent various information such as user data symbols, pilot symbols, and control symbols. For the sake of illustration, a stream of two such symbols, s1 followed by s2, are shown as output by modulator 20. Each symbol si is coupled to a serial-to-parallel converter 22. In response, serial-to-parallel converter 22 receives the incoming symbols and outputs them in parallel streams along its outputs 22o1 and 22o2 to a spreader 24. Spreader 24 modulates each data symbol by combining it with, or multiplying it times, a CDMA spreading sequence which can be a pseudo-noise (“PN”) digital signal or PN code or other spreading codes (i.e., it utilizes spread spectrum technology), and it may be a single code or a multicode approach where in a MIMO system the code(s) is the same for each transmitting antenna. In a single code instance, the different symbol streams to be transmitted by each transmit antenna TAT1 and TAT2 is multiplied times the same code. In a multicode instance, each stream output 22o1 and 22o2 is further divided into ds streams. Each of the ds streams is multiplied times a different and orthogonal code from a set of ds codes, where the same set of codes applies to each stream output 22o1 and 22o2. Also for each set of streams, after the multiplication times the codes, the resulting products are summed and output to a respective one of transmit antennas TAT1 and TAT2. In any event, the spreading sequence facilitates simultaneous transmission of information over a common channel by assigning each of the transmitted signals a unique code during transmission. Further, this unique code makes the simultaneously-transmitted signals over the same bandwidth distinguishable at receiver 14 (or other receivers). In any event, the outputs 24o1 and 24o2 of spreader 24 are connected to respective transmit antennas TAT1 and TAT2. For example, in a total stream ST of spread symbols s1, s2, s3, s4, spreader 24 outputs a first stream S1 consisting of spread symbols s1 and s3 to transmit antenna TAT1 and spreader 24 outputs a second stream S2 consisting of spread symbols s2 and s4 to transmit antenna TAT2.
Receiver 14 includes a first receive antenna RAT1 and a second receive antenna RAT2 for receiving communications from both of transmit antennas TAT1 and TAT2. Due to the wireless medium between transmitter 12 and receiver 14, each of receive antennas RAT1 and RAT2 receives signals from both of the transmit antennas TAT1 and TAT2. To further illustrate this effect, FIG. 1 illustrates a different channel effect value hab from each transmit antenna to each receive antenna, where the first subscript a designates the receive antenna (i.e., 1 for RAT1 and 2 for RAT2), and the second subscript b designates the transmit antenna (i.e., 1 for TAT1 and 2 for TAT2). For sake of reference as well as further analysis below, the received signals are designated r1 and r2 as received by antennas RAT2 and RAT2 respectively. Moreover, given the preceding description of the channel effect, it now may be observed that each of r1 and r2 includes the transmitted symbols, as influenced by the channel effects; additionally, a noise element w2 also will exist in r1 and r2 and, thus, each of these values may be represented according to the following respective Equations 1 and 2, which relate to the receipt of the first symbols s1 and s2 from streams S1 and S2, respectively:r1=h11s1+h12s2+w1  Equation 1r2=h21s1+h22s2+w2  Equation 2Thus, Equations 1 and 2 demonstrate that each receive antenna receives a signal having one component pertaining to one transmitted stream (e.g., s1) and another component pertaining to the other and independently-transmitted stream (e.g., s2).
Given the values r1 and r2 in Equations 1 and 2, they are connected to a despreader and signal separation block 32. The despreader function of block 32 operates according to known principles, such as by multiplying the CDMA signal times the CDMA code for receiver 14 and resolving any multipaths. In addition, since two separate signals are input, then the signal separation function of block 32 separates these signals into estimates of the transmitted symbol streams S1 and S2, and for sake of reference such estimates are shown as Ŝ1 and Ŝ2, respectively. In CDMA, the signals may be separated according to various known techniques, such as zero forcing or minimum mean square error, each being either a 1-shot (i.e., linear) or iterative operation, or alternatively a maximum likelihood approach may be implemented. The symbol stream estimates are connected to a parallel-to-serial converter 34, which converts the two parallel streams into a single total estimated symbol stream, ŜT. The estimated symbol stream is connected to a demodulator 36, which removes the modulation imposed on the signal by modulator 20 of transmitter 12. The output of demodulator 36 is connected to a deinterleaver 38. Deinterleaver 38 performs an inverse of the function of interleaver 18 of transmitter 12, and the output of deinterleaver 38 is connected to a channel decoder 40. Channel decoder 40 further decodes the data received at its input, typically operating with respect to certain error correcting codes, and it outputs a resulting stream of decoded symbols. Finally, the decoded symbol stream output by channel decoder 40 may be received and processed by additional circuitry in receiver 14, although such circuitry is not shown in FIG. 1 so as to simplify the present illustration and discussion.
From the preceding, it may be observed that MIMO system 10 has as a basic characteristic that it transmits independent data streams to a receiver such as receiver 14. However, each stream interferes with the other, and receiver 14 receives signals that include components from each of the independently-transmitted symbol streams. The advantage of MIMO system 10 is that it can achieve higher data rate for a given modulation scheme, for example because it simultaneously transmits different streams of data along different transmit antennas. Alternatively, MIMO system 10 allows the use of lower order modulation given the data rate requirement. The disadvantage, however, is that greater channel diversity gain may be achieved in other systems.
Another type of theoretical system proposed in the art is a closed loop system wherein channel information is communicated from a receiver to a transmitter and the transmitter communicates via the channel eigenmodes; such a system is referred to in this document as an eigenmode system and one is shown in electrical and functional block diagram form generally as eigenmode system 50 in FIG. 2. System 50 includes a transmitter 52 and a receiver 54. Within these devices, and for the sake of simplifying the following discussion, portions of transmitter 52 and a receiver 54 are shown to include various of the same or comparable blocks as system 10 in FIG. 1; these blocks therefore use the same reference identifiers in both Figures and the reader is assumed to be familiar with the earlier-described concepts relating to such blocks. Accordingly, the following focuses on those blocks which differ in eigenmode system 50 as compared to system 10, as discussed below.
Looking to transmitter 52, the symbols are output from serial-to-parallel converter 22, in respective symbols streams, along outputs 220; and 22. Each of outputs 22o1 and 22o2 is connected as a first multiplicand to a respective multiplier 561 and 562, and each of multipliers 561 and 562 receives as a second multiplicand a square root of a power weighting factor p1 and p2, respectively. The outputs of multipliers 561 and 562 are connected to a matrix multiplication block 58. Matrix multiplication block 58 multiplies the products from multipliers 561 and 562 times a matrix U, where U is detailed later after a presentation of the channel effect as characterized by a matrix, H. At this point, for the sake of designation, let the resulting products from matrix multiplication block outputs 58o1 and 58o2 be represented as x1 and xZ, as shown in FIG. 2, and thus in response to the various operations on symbols s1 and s2, respectively. The outputs 58o1 and 58o2 of matrix multiplication block 58 are connected to spreader 24, after which the spread signals are connected to transmit antennas TAT3 and TAT4 for transmission to receiver 54.
Receiver 54 includes receive antennas RAT3 and RAT4 for receiving signals r1 and r2 from transmit antennas TAT3 and TAT4. These signals are first despread by a despreader 32. Further, in a way comparable to MIMO system 10 and discussed above with respect to Equations 1 and 2, the signals received by each of receive antennas RAT3 and RAT4 include components from both of the transmit antennas TAT3 and TAT4, as influenced by channel effects hab from each transmit antenna to each receive antenna. To further explain eigenmode system 50 and the additional processing following despreader 32, let the following matrix H, as shown in Equation 3, include each of these channel effects:
                    H        =                  [                                                                      h                  11                                                                              h                  12                                                                                                      h                  21                                                                              h                  22                                                              ]                                    Equation        ⁢                                  ⁢        3            Further, a vector, r, is now defined to include each of the received signals r1 and r2, according to the following Equation 4:
                              r          _                =                              H            ⁡                          [                                                                                          x                      1                                                                                                                                  x                      2                                                                                  ]                                +                      [                                                                                w                    1                                                                                                                    w                    2                                                                        ]                                              Equation        ⁢                                  ⁢        4            where in Equation 4, H is the channel effect matrix of Equation 3, x1 and x2 are the signals transmitted by transmitter 52, and w1 and w2 are the noise components in the received signals. Further, let the transmitted signals and noise signals be defined as the vectors in the following Equations 5 and 6:
                              x          _                =                  [                                                                      x                  1                                                                                                      x                  2                                                              ]                                    Equation        ⁢                                  ⁢        5                                          w          _                =                  [                                                                      w                  1                                                                                                      w                  2                                                              ]                                    Equation        ⁢                                  ⁢        6            Accordingly, Equation 4 can be re-written in vector form by substituting in the conventions of Equations 5 and 6 to yield the following Equation 7:r=Hx+w  Equation 7
Having established the various preceding designations, attention is now returned to additional aspects of receiver 54, after which the preceding Equations are further developed to reflect the overall operation of eigenmode system 50. The signals r1 and r2 are connected from receive antennas RAT3 and RAT4, through despreader 32, to a matched filter block 60. Matched filter block 60 multiplies these incoming signals times a matrix that represents a conjugate transpose of an estimate of the channel effect H shown in Equation 3 and, thus, this conjugate transpose is designated HH and since the estimate is involved it is shown as ĤH. Note that the channel effect used for this computation is generally determined by receiver 54 by estimating the channel effect on pilot symbols it receives from transmitter 52. In the art, the operation of matched filter 60 is sometimes referred to as part of a different block such as a rake, rake filter, space time rake filter, signal separation block, or the like. In any event, the output of matched filter block 60 may be shown as the vector y in the following Equation 8:y=ĤHr  Equation 8
Next, Equation 7 may be substituted for r in Equation 8, and assuming the estimate of H is a fairly accurate estimate then the value HH may be used for ĤH, yielding the following Equation 9:y=HHHx+HHw  Equation 9
In Equation 9, the result of HHH is Hermitian symmetric and non-negative definite. Hence, from matrix theory, HHH may be re-stated according to eigen decomposition as shown in the following Equation 10:HHH=UΛUH  Equation 10
Eigen decomposition indicates that the factor U from Equation 10 is defined as shown in the following Equation 11:U=[u1,u2]  Equation 11In Equation 11, u1 and u2 are referred to as eigenvectors, that is, they are the eigenvectors of HHH; sometimes in the wireless art, such vectors are instead referred to as eigenmnodes due to the transmission in response to these values as described later. The eigenvectors are further defined according to the following Equations 12 and 13:
                                          u            _                    1                =                  [                                                                      u                  11                                                                                                      u                  12                                                              ]                                    Equation        ⁢                                  ⁢        12                                                      u            _                    2                =                  [                                                                      u                  21                                                                                                      u                  22                                                              ]                                    Equation        ⁢                                  ⁢        13            Additionally, the eigenvectors have the following properties of Equations 14 and 15:u1Hu1=u2Hu2=1  Equation 14u1Hu2=u2Hu1=0  Equation 15
From the above, the two eigenvectors u1 and u2 are orthogonal and perpendicular, and as shown below they also are non-interfering with one another, which allows transmission of signals in response to these eigenvectors so that those signals do not interfere with one another. Additionally, the matrix U may be re-written with the eigenvectors u1 and u2 in its columns, as shown in the following Equation 16:
                    U        =                  [                                                                      u                  11                                                                              u                  12                                                                                                      u                  21                                                                              u                  22                                                              ]                                    Equation        ⁢                                  ⁢        16            
Eigen decomposition also indicates that the factor A from Equation 10 is defined as shown in the following Equation 17:
                    Λ        =                  [                                                                      λ                  1                                                            0                                                                    0                                                              λ                  2                                                              ]                                    Equation        ⁢                                  ⁢        17            In the diagonal matrix of Equation 17, and in connection with HHH, λ1 and λ2 are referred to as its eigenvalues, and they are real numbers greater than or equal to zero. Additionally, each eigenvalue λ1 and λ2 is linked to a corresponding one of the eigenvectors u1 and u2, respectively, and are analogous to a gain factor for the corresponding eigenvector. This relationship can similarly be shown by re-writing Equation 10 as the following Equation 18:
                                          H            H                    ⁢          H                =                              U            ⁢                                                  ⁢            Λ            ⁢                                                  ⁢                          U              H                                =                                    ∑                              i                =                1                            2                        ⁢                                                  ⁢                                          λ                i                            ⁢                                                u                  _                                i                            ⁢                                                u                  _                                i                H                                                                        Equation        ⁢                                  ⁢        18            From Equation 18, one skilled in the art will, therefore appreciate the correspondence of the eigenvalue λ1 with the eigenvector u1 and the correspondence of the eigenvalue λ2 with the eigenvector u2.
Continuing now with receiver 54, the resulting vector y from matched filter 60 is output to a matrix multiplication block 62. Matrix multiplication block 62 multiplies its vector input times the conjugate transpose of the matrix U of Equation 16, that is, the multiplicand is therefore UH. The result of this operation, as further detailed below, provides a vector z that includes separate output symbols z1 and z2, and which correspond to the independently-transmitted signals x1 and x2, respectively (and, hence, also to symbols s1 and s2, respectively). Thus, the operation of matrix multiplication block 62 may be represented by the following Equation 19:z=UHy  Equation 19
From the above, it has been shown that transmitter 52 includes a matrix multiplication block 58 that multiplies parallel input symbols streams times the matrix U, and receiver 54 includes a matrix multiplication block 58 that multiplies its input signals times the conjugate transpose of that matrix, namely, UH. These aspects are now further explored so as to demonstrate how these operations provide for the transmission of independent symbol streams and the recovery of those streams at receiver 54 without interference between them.
Returning to transmitter 52, recall that symbols s1 and s2 are multiplied times √{right arrow over (p1)} and √{right arrow over (p2)}, respectively. This operation may be represented mathematically by defining the matrix, Π, in the following Equation 20:
                    Π        =                  [                                                                                          p                    1                                                                              0                                                                    0                                                                                  p                    2                                                                                ]                                    Equation        ⁢                                  ⁢        20            Further, let the vector s be defined to include the symbols s1 and s2, and let the vector x be defined to include the transmitter outputs x1 and x2, then the output of transmitter 52 is as shown in the following Equation 21:x=UΠs  Equation 21
Returning to receiver 54, recall that blocks 60 and 62 perform multiplications times HH and UH, respectively. The effect of these multiplications now may be appreciated further, particularly by substituting Equation 10 into Equation 9, to yield the vector shown in the following Equation 22:y=UΛUHx+HHw  Equation 22Next, Equation 22 may be substituted into Equation 19 for y to define the output vector, z, from multiplication block 62, as is shown in the following Equation 23:z=UH(UΛUHx+HHw)=UHUΛUHx+UHHHw  Equation 23Equation 23 can be reduced due to the property of the eigenvector matrix U as shown in the following Equation 24:
                                          U            H                    ⁢          U                =                  I          =                      [                                                            1                                                  0                                                                              0                                                  1                                                      ]                                              Equation        ⁢                                  ⁢        24            From Equation 24, therefore, the identity matrix result, I, may be removed from Equation 23, and additionally Equation 21 may be substituted into Equation 23 for x, while also disregarding the noise term relating to the vector w, with the result shown in the following Equation 25:z=ΛUHx=ΛUHUΠs=ΛΠs  Equation 25
Having developed Equation 25 as a result of the two matrix multiplications (i.e., UH, HH) in receiver 54, it is now shown how the eigenmode transmissions do not interfere with one another. Specifically, Equation 25 may be fully written out and simplified according to the following Equation 26:
                              [                                                                      z                  1                                                                                                      z                  2                                                              ]                =                                            [                                                                                          λ                      1                                                                            0                                                                                        0                                                                              λ                      2                                                                                  ]                        ⁡                          [                                                                                                                  p                        1                                                                                                  0                                                                                        0                                                                                                      p                        2                                                                                                        ]                                ⁢                                                                 [                                                                                                    d                        1                                                                                                                                                d                        2                                                                                            ]                            =                                                                    [                                                                                                                                                      λ                              1                                                        ⁢                                                                                          p                                1                                                                                                                                                              0                                                                                                                      0                                                                                                                                    λ                              2                                                        ⁢                                                                                          p                                2                                                                                                                                                                          ]                                    ⁡                                      [                                                                                                                        s                            1                                                                                                                                                                            s                            2                                                                                                                ]                                                  =                                  [                                                                                                                                          λ                            1                                                    ⁢                                                      s                            1                                                    ⁢                                                                                    p                              1                                                                                                                                                                                                                                                λ                            2                                                    ⁢                                                      s                            2                                                    ⁢                                                                                    p                              2                                                                                                                                                            ]                                                                                        Equation        ⁢                                  ⁢        26            From Equation 26, it may be seen that as a result of the multiplication by blocks 60 and 62, z1 is a value that is responsive to s1 irrespective of s2, and similarly, z2 is a value that is responsive to s2 irrespective of s1. In other words, there is no interference as between s1 and s2, as transmitted to receiver 54. This result occurs due to the orthogonality property shown in Equation 24, as realized by the multiplication of the transmitted signals by U in block 52 and the later multiplication of the received signals by UH in block 62. As a result, following block 62, and unlike certain other wireless systems, there is no additional interference cancellation block in receiver 54.
While eigenmode system 50 provides communication of independent symbol streams and does not require interference cancellation at the receiver, note that transmitter 52 necessarily requires sufficient channel state information to determine the matrix U. In an FDD system where the uplink and downlink channels are asymmetric, then receiver 54 must therefore provide this information to transmitter 52 in some form. For example, receiver 54 must either receive the eigenvectors and eigenvalues from receiver 54, or it must receive sufficient information from receiver 54 so that it may determine these values on its own from the received information. However, for FDD systems, the requirement of feeding back sufficient state information may itself not be feasible due to the high amount of bandwidth that would be required to feed back such information. For example, when four transmit antennas are used, then possibly four eigenvectors must be computed by receiver 54 and fed back, where each eigenvector is represented by four coefficients (including the power weighting eigenvalue for each stream), representing a total of 16 coefficients. Assuming that each coefficient is quantized to NQ bits, this requires a 16×NQ bit feedback resource. However, in the current WCDMA standard, only 1 feedback bit per slot is sent to the transmitter. Thus, to implement an eigenmode system even for NQ=2, this would result in an intrinsic delay of 32 slots, which therefore is not acceptable even in slow fading channels. In addition, trade-offs may be realized by transmitting only via the best channel eigenvector which gives the maximum diversity gain at the expense of low data rate, or one may utilize all the channel eigenvectors to transmit different data streams and thus increase the data rate, while losing diversity gain and hence decreasing performance. In theory, to partially overcome this loss of diversity, a power allocation scheme across eigenvectors can be used to reduce the channel variation caused by the fading. However, for FDD systems where the requirement of feeding back state information may itself not be feasible due to the high amount of bandwidth it consumes, this additional amount of feedback makes the total amount of return information even less feasible. Moreover, if the feedback rate is fixed, such a proposal would increase the delay time before transmitter 52 acquires the eigenvectors. This then results in a large performance loss, particularly when the channel is time varying.
In view of the above, there arises a need to address the drawbacks of the prior art and the preceding proposals, as is achieved by the preferred embodiments described below.